
import React from 'react';
import type { FormProps } from 'antd';
import { Button, Checkbox, Form, Input, message } from 'antd';
import { loginApi } from "@/apis/Apis";
import { useNavigate } from 'react-router-dom';
type FieldType = {
    account: string;
    password: string
};
function Login() {
    const navigate = useNavigate()
    const [messageApi, contextHolder] = message.useMessage();
    const onFinish: FormProps<FieldType>['onFinish'] = async (values) => {
        console.log('Success:', values);
        const { account, password } = values
        const res = await loginApi({ account, password })
        console.log(res);

        if ( res.status === 200) {
            messageApi.open({
                type: 'success',
                content: '登陆成功',
            });
            localStorage.setItem('token', res.data.token)
            setInterval(() => {

                navigate('/home')
            }, 1000)

        } else {
            messageApi.open({
                type: 'error',
                content: '登录失败哦',
            });

        }
    };

    const onFinishFailed: FormProps<FieldType>['onFinishFailed'] = (errorInfo) => {
        console.log('Failed:', errorInfo);
    };
    return (
        <div>
            {contextHolder}
            <Form
                name="basic"
                labelCol={{ span: 8 }}
                wrapperCol={{ span: 16 }}
                style={{ maxWidth: 600 }}
                initialValues={{ remember: true }}
                onFinish={onFinish}
                onFinishFailed={onFinishFailed}
                autoComplete="off"
            >
                <Form.Item<FieldType>
                    label="Username"
                    name="account"
                    rules={[{ required: true, message: 'Please input your username!' }]}
                >
                    <Input />
                </Form.Item>

                <Form.Item<FieldType>
                    label="Password"
                    name="password"
                    rules={[{ required: true, message: 'Please input your password!' }]}
                >
                    <Input.Password />
                </Form.Item>



                <Form.Item label={null}>
                    <Button type="primary" htmlType="submit">
                        登录
                    </Button>
                </Form.Item>
            </Form>
        </div>
    );
}

export default Login;